/**
 * 设计模式（Design pattern）是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结；使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。
 * 七大设计原则
 * 开闭原则：对扩展开放，对修改关闭。
 * 里氏替换：子类必须能够替换其父类，否则不应当设计为其子类。
 * 依赖倒置：设计和实现要依赖于抽象而非具体。
 * 单一职责：不要存在多于一个导致类变更的原因。
 * 接口隔离：将大的接口打散成多个小的独立的接口。
 * 迪米特法则（最少知道原则）：一个对象就尽可能少的去了解其它对象。
 * 合成复用（组合复用）：要尽量使用合成/聚合，而非使用继承。
 * <p>
 * 三十个知识点，七大设计原则、二十三种设计模式
 * 开闭原则、里氏替换原则、依赖倒置原则、单一职责、接口隔离、迪米特、合成复用
 * 1、创建型模式（5种）：工厂方法模式，抽象工厂模式，单例模式，建造者模式，原型模式。
 * 2、结构型模式（7种）：适配器模式，装饰器模式，代理模式，外观模式，桥接模式，组合模式，享元模式。
 * 3、行为型模式（11种）：(策略模式、模板方法模式)-父子类、(观察者模式、命令模式、迭代子模式、责任链模式)-两个类、(备忘录模式、状态模式)-类状态、(访问者模式、中介者模式、解释器模式)-中间类。
 */
package ch01_design_principles;
